import { ApiProperty } from '@nestjs/swagger';
import { UserStatus, WorkspaceMemberRole } from '../../../types/enums';
import { UserResponseDto } from '../../auth/dto/user-response.dto';

export class WorkspaceMemberResponseDto {
  @ApiProperty({
    description: '工作区成员ID',
    example: '550e8400-e29b-41d4-a716-446655440000'
  })
  id: string;

  @ApiProperty({
    description: '工作区ID',
    example: '550e8400-e29b-41d4-a716-446655440000'
  })
  workspaceId: string;

  @ApiProperty({
    description: '用户信息',
    type: UserResponseDto
  })
  user: UserResponseDto;

  @ApiProperty({
    description: '成员角色',
    enum: WorkspaceMemberRole,
    example: WorkspaceMemberRole.MEMBER
  })
  role: WorkspaceMemberRole;

  @ApiProperty({
    description: '加入时间',
    example: '2023-01-01T00:00:00.000Z'
  })
  joinedAt: Date;

  @ApiProperty({
    description: '状态',
    enum: UserStatus,
    example: UserStatus.ACTIVE
  })
  status: UserStatus;

  @ApiProperty({
    description: '创建时间',
    example: '2023-01-01T00:00:00.000Z'
  })
  createdAt: Date;

  @ApiProperty({
    description: '更新时间',
    example: '2023-01-01T00:00:00.000Z'
  })
  updatedAt: Date;
} 